package com.alibaba.yinan.domain.task.service.policy.extensionpoint;

import com.alibaba.cola.extension.ExtensionPointI;
import com.alibaba.yinan.domain.task.Task;

/**
 * @ClassName DispatchPolicy
 * @Author mengke
 * @create 2025/8/3 20:41
 * @Description
 */
public interface DispatchPolicyExtPt extends ExtensionPointI {

    /**
     * 判断是否支持某种策略Key
     *
     * @param policyKey 策略 Key
     * @return 是否支持
     */
    boolean support(String policyKey);

    /**
     * 选择设备
     *
     * @param task 任务
     * @return 设备ID
     */
    String selectDevice(Task task);
}
